1

PHP计算二维数组的元素个数

对于计算下面这种二位数组的个数,可以用count函数来计算

$arr = [
    [11,22],
    [
        'aa' => 33,
        'bb' => 44,
        'cc' => 55
    ]
];

一般对于count,相信每个人都很熟悉,但有一点可能是大家不清楚的,就是count的第二个参数,下面介绍一下

count ( mixed $array_or_countable [, int $mode = COUNT_NORMAL ] ) : int

参数解释

array_or_countable
    数组或者 Countable 对象。
mode
    如果可选的 mode 参数设为 COUNT_RECURSIVE(或 1),count() 将递归地对数组计数。
    计算多维数组的所有单元尤其有用。

关键是就是第二个参数的COUNT_RECURSIVE,它是递归的算出二位数组的个数。而不是二维数组的元素个数

$a = count($arr,COUNT_RECURSIVE)
//$a = 7
//因为 [11,22] 和 ['aa' => 33, 'bb' => 44,'cc' => 55]也算上了

所以最后要求元素个数$num = count($arr,COUNT_RECURSIVE) - count($arr)


iMine
95 声望3 粉丝

将生活带给你柠檬搬的酸楚,酿成犹如柠檬汽水般的甘甜